Skip to content

Conversation

@jyn514
Copy link
Member

@jyn514 jyn514 commented Dec 13, 2025

  • Split out linker-info from linker-messages
  • Make linker-messages warn-by-default; keep linker-info deny-by-default

Helps with #136096.

@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Dec 13, 2025
@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@saethlin
Copy link
Member

@bors try

@rust-bors

This comment has been minimized.

rust-bors bot added a commit that referenced this pull request Dec 13, 2025
try enabling `linker-messages` by default again
@rust-log-analyzer

This comment has been minimized.

@rust-bors
Copy link
Contributor

rust-bors bot commented Dec 13, 2025

☀️ Try build successful (CI)
Build commit: 58b1b3c (58b1b3c5342a414c161338871f8004258ccef2a7, parent: eb171a227f9e5de5d376b6edb56b174bc8235fb3)

@saethlin
Copy link
Member

@craterbot build-only

@craterbot
Copy link
Collaborator

🚨 Error: failed to parse the command

🆘 If you have any trouble with Crater please ask in t-infra on Zulip
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@saethlin
Copy link
Member

@craterbot run mode=build-only

@craterbot
Copy link
Collaborator

👌 Experiment pr-149937 created and queued.
🤖 Automatically detected try build 58b1b3c
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Dec 13, 2025
@rustbot rustbot added the A-run-make Area: port run-make Makefiles to rmake.rs label Dec 13, 2025
@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Dec 14, 2025
don't use no_main and no_core to test IBT

The previous test was quite fragile and depended on a bunch of internal features. Simplify it.

Split out of rust-lang#149937.

cc `@jieyouxu` `@Oneirical`
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Dec 14, 2025
don't use no_main and no_core to test IBT

The previous test was quite fragile and depended on a bunch of internal features. Simplify it.

Split out of rust-lang#149937.

cc ``@jieyouxu`` ``@Oneirical``
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Dec 14, 2025
don't use no_main and no_core to test IBT

The previous test was quite fragile and depended on a bunch of internal features. Simplify it.

Split out of rust-lang#149937.

cc ```@jieyouxu``` ```@Oneirical```
rust-timer added a commit that referenced this pull request Dec 15, 2025
Rollup merge of #149969 - jyn514:ibt, r=jieyouxu

don't use no_main and no_core to test IBT

The previous test was quite fragile and depended on a bunch of internal features. Simplify it.

Split out of #149937.

cc ```@jieyouxu``` ```@Oneirical```
@bors
Copy link
Collaborator

bors commented Dec 15, 2025

☔ The latest upstream changes (presumably #149999) made this pull request unmergeable. Please resolve the merge conflicts.

github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Dec 18, 2025
don't use no_main and no_core to test IBT

The previous test was quite fragile and depended on a bunch of internal features. Simplify it.

Split out of rust-lang/rust#149937.

cc ```@jieyouxu``` ```@Oneirical```
@craterbot
Copy link
Collaborator

🚧 Experiment pr-149937 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-149937 is completed!
📊 24 regressed and 5 fixed (758860 total)
📊 2582 spurious results on the retry-regressed-list.txt, consider a retry1 if this is a significant amount.
📰 Open the summary report.

⚠️ If you notice any spurious failure please add them to the denylist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

Footnotes

  1. re-run the experiment with crates=https://crater-reports.s3.amazonaws.com/pr-149937/retry-regressed-list.txt

jyn514 and others added 2 commits January 31, 2026 15:39
- Hide common linker output behind `linker-info`
- Add tests
- Account for different capitalization on windows-gnu when removing
  "warning" prefix
- Add some more comments
- Add macOS deployment-target test
- Ignore linker warnings from trying to statically link glibc

  I don't know what's going on in `nofile-limit.rs` but I want no part
  of it.
@jyn514 jyn514 marked this pull request as ready for review January 31, 2026 20:45
@rustbot
Copy link
Collaborator

rustbot commented Jan 31, 2026

Some changes occurred in compiler/rustc_passes/src/check_attr.rs

cc @jdonszelmann, @JonathanBrouwer

@rustbot
Copy link
Collaborator

rustbot commented Jan 31, 2026

r? @BoxyUwU

rustbot has assigned @BoxyUwU.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@jyn514
Copy link
Member Author

jyn514 commented Jan 31, 2026

r? @mati865

@rustbot rustbot assigned mati865 and unassigned BoxyUwU Jan 31, 2026
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-tools failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
REPOSITORY                                   TAG       IMAGE ID       CREATED      SIZE
ghcr.io/dependabot/dependabot-updater-core   latest    bcec0b4e062b   5 days ago   783MB
=> Removing docker images...
Deleted Images:
untagged: ghcr.io/dependabot/dependabot-updater-core:latest
untagged: ghcr.io/dependabot/dependabot-updater-core@sha256:b662be51f7b8ef7e2c8464428f14e49cb79c36aa9afb7ecb9221dfe0f507050c
deleted: sha256:bcec0b4e062b5ffe11cc1c2729558c0cd96621c0271ab5e97ff3a56e0c25045a
deleted: sha256:64e147d5e54d9be8b8aa322e511cda02296eda4b8b8d063c6a314833aca50e29
deleted: sha256:5cba409bb463f4e7fa1a19f695450170422582c1bc7c0e934d893b4e5f558bc6
deleted: sha256:cddc6ebd344b0111eaab170ead1dfda24acdfe865ed8a12599a34d338fa8e28b
deleted: sha256:2412c3f334d79134573cd45e657fb6cc0abd75bef3881458b0d498d936545c8d
---
tests/ui/double_parens.rs ... ok
tests/ui/drop_non_drop.rs ... ok
tests/ui/duplicate_underscore_argument.rs ... ok
tests/ui/duplicated_attributes.rs ... ok
tests/ui/duration_suboptimal_units_days_weeks.rs ... ok
tests/ui/duration_suboptimal_units.rs ... ok
tests/ui/duration_subsec.rs ... ok
tests/ui/double_parens.fixed ... ok
tests/ui/duration_suboptimal_units_days_weeks.fixed ... ok
tests/ui/duration_suboptimal_units.fixed ... ok
tests/ui/duration_subsec.fixed ... ok
tests/ui/elidable_lifetime_names.rs ... ok
tests/ui/eager_transmute.rs ... ok
tests/ui/else_if_without_else.rs ... ok
tests/ui/empty_docs.rs ... ok
---
...............................................    (147/147)

======== tests/rustdoc-gui/globals.goml ========

[ERROR] line 14: Error: The window properties still all match: for command `wait-for-window-property-false: {"searchIndex": null}`
    at <file:///checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc-gui/doc/test_docs/index.html?search=Foo>

======== tests/rustdoc-gui/search-result-display.goml ========

[WARNING] line 39: Delta is 0 for "x", maybe try to use `compare-elements-position` instead?

@zacknewman
Copy link

zacknewman commented Feb 1, 2026

@jyn514, there is still an issue with macOS; so I'm not sure this should be enabled yet. See #151970.

@jyn514
Copy link
Member Author

jyn514 commented Feb 2, 2026

@zacknewman that warning has been moved into the new linker-info lint, which is allow-by-default.

@zacknewman
Copy link

zacknewman commented Feb 2, 2026

@zacknewman that warning has been moved into the new linker-info lint, which is allow-by-default.

Has that change made it to nightly? Yesterday I tried using the nightly compiler, and it still erred.

rustc -Whelp using nightly doesn't contain linker-info, so the error occurring on nightly is expected.

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 3, 2026

☔ The latest upstream changes (presumably #152063) made this pull request unmergeable. Please resolve the merge conflicts.

Copy link
Member

@mati865 mati865 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple of questions regarding the tests, to make sure they don't cause issues for people working on their machines.

View changes since this review

Comment on lines +687 to +692
fn is_windows_gnu_ld(sess: &Session) -> bool {
let (_, flavor) = linker_and_flavor(sess);
sess.target.is_like_windows
&& !sess.target.is_like_msvc
&& matches!(flavor, LinkerFlavor::Gnu(_, Lld::No))
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will match windows-gnu and windows-gnullvm targets. Probably doesn't matter enough to justify adding && sess.target.abi != Abi::Llvm there.

@@ -0,0 +1,5 @@
//@ only-windows-gnu
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wait, this still happens on CI?
It should not since Sep 9, 2024: #119229 (comment)

Regardless of the CI, having a test that fails only with some host tools version doesn't seem right.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

um. hm. possibly this only fails for me locally because I have an old version of windows-gnu? I'm not sure how to test it in CI ...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe instead I could add a fake-linker script that prints exactly the error message I see locally? does that seem reasonable?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, that's very likely. Does your ld -v show version older than 2.40?

Fake linker sounds fine for me, although that probably would have to be a batch script or powershell one since this test runs on Windows.

@bors try jobs=x86_64-mingw-1,x86_64-mingw-2

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can test it on CI after you resolve conflicts.

@bors delegate

@mati865
Copy link
Member

mati865 commented Feb 4, 2026

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 4, 2026
@jyn514
Copy link
Member Author

jyn514 commented Feb 4, 2026

@rustbot review

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Feb 4, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 4, 2026

🔒 Merge conflict

A merge attempt failed due to a merge conflict. Please rebase on top of the latest base
branch, and let the reviewer approve again.

How do I rebase?

Assuming self is your fork and upstream is this repository,
you can resolve the conflict following these steps:

  1. git checkout linker-info (switch to your branch)
  2. git fetch upstream HEAD (retrieve the latest base branch)
  3. git rebase upstream/HEAD -p (rebase on top of it)
  4. Follow the on-screen instruction to resolve conflicts (check git status if you got lost).
  5. git push self linker-info --force-with-lease (update this PR)

You may also read
Git Rebasing to Resolve Conflicts by Drew Blessing
for a short tutorial.

Please avoid the "Resolve conflicts" button on GitHub.
It uses git merge instead of git rebase which makes the PR commit history more difficult to read.

Sometimes step 4 will complete without asking for resolution. This is usually due to difference between how Cargo.lock conflict is
handled during merge and rebase. This is normal, and you should still perform step 5 to update this PR.

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 4, 2026

✌️ @jyn514, you can now approve this pull request!

If @mati865 told you to "r=me" after making some further change, then please make that change and post @bors r=mati865.

@jyn514
Copy link
Member Author

jyn514 commented Feb 4, 2026

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-run-make Area: port run-make Makefiles to rmake.rs S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants